Business processes are often used to manage various trading mechanisms, such as auctions, contracts, and requests for quotes (RFQs). At the same time, much of business revolves around making decisions and other user actions. Typically, these decisions are made by authorized individuals acting on behalf of their organizations, applying a variety of rules or guidelines. The actual decision-making logic may be simple or extremely complex depending upon the needs of the business and the decision being made. However, the demands on decision-makers are rapidly increasing along with the pace of business. This leaves the decision-makers overloaded, many times with trivial decisions, thus decreasing the amount of time that they have to focus on more important decisions. It has been found that business processes can be represented using a state machine. State machines provide a way to control the set of events and actions that may be performed by authorized users throughout the life cycle of a business object.
Among other benefits, state machines provide a means for automating some decision-making. For example, if the number of levels of approval in a business process could be configured in such a way that it appeared to dynamically change at run time to match the requirements of the user organization, then many organizations would be able to share the same business process. If this same mechanism also allowed automatic decision-making support for the more routine decisions, then the workload of the decision-makers could be eased to allow them to focus their attention on the more difficult matters. Overall, there would be increased flexibility without increased expense or complexity.
As more businesses move towards electronic commerce, especially for business-to-business transactions, the number of business processes and trading mechanisms they are using is increasing significantly. To date, most of the innovation in technology has focused on improving the business processes and trading mechanisms themselves. The management of the diverse set of business processes has been mostly ignored.
In order for the user operating within these environments to be highly productive, the user must be able to rapidly select the trading mechanism and business process required for each transaction. Too often it is easy for users to select the wrong process and erroneously follow paths which lead to a rejection after a great deal of time and effort has already been invested.
A need therefore exists for a means for organizing state machines to provide a natural flow for the users of the state machine. The navigation of a state machine is particularly challenging when the associated organizations define and use many different business processes in a variety of trading mechanisms. The selection and identification of which trading mechanism and then which business process to use for each object will likely be based upon the specific organization within the marketplace and possibly a user-selection.